/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model;

import componenten.Database;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 *
 * @author daveronvanderham
 */
public class Lid {

    private int lid_id;
    private int rating;
    private String voornaam;
    private String achternaam;
    private String email;
    private String tussenvoegsel;

    public Lid() {
    }

    public Lid(int lid_id) {
    }

    public Lid(int lid, String email, int rating) {
        this.lid_id = lid;
        this.email = email;
        this.rating = rating;


    }

    /**
     * @return the lid_id
     */
    public int getLid_id() {
        return lid_id;
    }

    /**
     * @param lid_id the lid_id to set
     */
    public void setLid_id(int lid_id) {
        this.lid_id = lid_id;
    }

    /**
     * @return the rating
     */
    public int getRating() {
        return rating;
    }

    /**
     * @param rating the rating to set
     */
    public void setRating(int rating) {
        this.rating = rating;
    }

    /**
     * @return the voornaam
     */
    public String getVoornaam() {
        return voornaam;
    }

    /**
     * @param voornaam the voornaam to set
     */
    public void setVoornaam(String voornaam) {
        this.voornaam = voornaam;
    }

    /**
     * @return the achternaam
     */
    public String getAchternaam() {
        return achternaam;
    }

    /**
     * @param achternaam the achternaam to set
     */
    public void setAchternaam(String achternaam) {
        this.achternaam = achternaam;
    }

    /**
     * @return the email
     */
    public String getEmail() {
        return email;
    }

    /**
     * @param email the email to set
     */
    public void setEmail(String email) {
        this.email = email;
    }

    /**
     * @return the tussenvoegsel
     */
    public String getTussenvoegsel() {
        return tussenvoegsel;
    }

    /**
     * @param tussenvoegsel the tussenvoegsel to set
     */
    public void setTussenvoegsel(String tussenvoegsel) {
        this.tussenvoegsel = tussenvoegsel;
    }

    public Lid[] haalLedenOp() {

        int aantalLeden = this.haalAantalLedenOp();

        //Lijstje aanmaken voor de tennistoernooien die we uit de database gaan halen. 
        Lid[] Leden;
        if (aantalLeden == -1) {
            return null;
        } else {
            Leden = new Lid[aantalLeden];
        }

        try {

            String sql = "SELECT * FROM lid ";
            ResultSet resultaat = Database.executeSelectQuery(sql);

            int teller = 0;
            while (resultaat.next()) {

                Lid lid = new Lid(resultaat.getInt("lid_id"));

                Leden[teller] = lid;
                teller++;
            }

            return Leden;
        } catch (SQLException e) {
            return null;
        }
    }

    public int haalAantalLedenOp() {
        String sql = "SELECT COUNT(*) AS aantal FROM lid";
        try {
            ResultSet resultaat = Database.executeSelectQuery(sql);
            resultaat.next();
            int aantalLocaties = resultaat.getInt("aantal");
            return aantalLocaties;
        } catch (SQLException e) {
            return -1;
        }
    }

    public String[] getInformatie() {
        return new String[]{Integer.toString(this.lid_id), this.email, Integer.toString(this.rating)};
    }
}
